1. Field of the Invention
The present invention relates to an image forming apparatus and an information processing apparatus to improve efficiency of development of programs and efficiency of execution of programs.
2. Description of the Related Art
Recently, an image forming apparatus (to be referred to as a compound machine hereinafter) that includes functions of a printer, a copier, a facsimile, a scanner and the like in a cabinet is generally known. The compound machine includes a display part, a printing part and an image pickup part and the like in a cabinet. In the compound machine, three pieces of software corresponding to the printer, copier and facsimile respectively are provided, so that the compound machine functions as the printer, the copier, the scanner and the facsimile respectively by switching the software.
According to such a conventional compound machine, an operation panel is provided for the user to operate the compound machine. The operation panel includes an operation display part (LCD panel) for displaying an operation screen and for performing touch operation. According to such a conventional compound machine, since capabilities that are provided to the user are predetermined, operations performed by the user for the compound machine are not largely changed. Thus, it is not necessary to customize the display screen and touch operations on the operation display part. Thus, customizing capability for the operation display part is not provided for the conventional compound machine.
Since the conventional compound machine is provided with pieces of software for the printer, the copier, the scanner and the facsimile individually, much time is required for developing the software. Therefore, the applicant has developed an image forming apparatus (compound machine) including hardware resources, a plurality of applications, and a platform including various control services provided between the applications and the hardware resources. The hardware resources such as a display part, a printing part and an image pickup part are used for image forming processing. The applications perform processing for user services corresponding to printer, copier and facsimile and the like. The platform includes various control services performing management and execution control of hardware resources necessary for at least two applications commonly, and performing image forming processing. The processing performed by the control services can be called system side processing.
According to such a new compound machine, the applications and the control services are provided separately. Thus, after the compound machine is shipped, users or third party venders can develop new applications to install in the compound machine. By doing so, various functions can be provided.
Therefore, it may be necessary to provide capabilities different from the predetermined capabilities for operation of the operation display part for new applications. Thus, it is necessary to customize operation of the operation display part. This problem is not a problem for the conventional compound machine in which external application can not be installed after shipment of the compound machine.
It can be considered to customize the operation display part by writing source code when developing the external application. That is, execution processing associated with touch operation of the display part is developed while developing the external application itself. In this case, from the view point of efficiency of development of the program, it is desirable to develop the external application while verifying the operation of the application in the compound machine. In this case, every time when there is a problem in the application, source code needs to be amended, recompiled, re-linked, and the application program needs to be installed in the compound machine again, then, the operation of the program needs to be verified again. According to this procedure, efficiency of development of the program is not good.
This problem is not limited to customizing of the operation display part. Generally, it is inefficient to produce a program by using a PC while verifying the program by using the compound machine. In addition, for executing an application, it is necessary to store the application in the compound machine from the PC in which the application is developed. Thus, in addition to developing an application efficiently, it is necessary to store and execute the application in the compound machine efficiently in order to improve the convenience of users.